\documentclass[a4paper, 11pt, oneside]{report}

%%muy util para salto de línea
%\vspace{0.5 cm}
%Para garantizar la división correcta de palabras en castellano
\usepackage[spanish,activeacute]{babel}
%%\hyphenrules{nohyphenation}

\hyphenation{
             an-te-rio-res
             co-he-ren-te
	     Com-pu-ter
             co-no-ci-mien-to
             cons-tan-te
             correc-to
             correc-ta-men-te
             corres-pon-dien-te
             corres-pon-dien-tes
             des-pla-za-mien-to
             di-fe-ren-te
             di-fe-ren-tes
             es-tu-dian-te
             fac-to-ri-za-ción
             in-de-pen-dien-te-men-te
             in-fe-ren-cia
             La-ti-no-a-me-ri-ca-na
             ma-te-má-ti-ca
             má-xi-mo
             pre-di-ca-do
             po-si-ti-vo
             po-si-ti-vos
             ra-zo-na-mien-to
             re-curren-cia
             re-fle-xi-va
             re-pre-sen-ta
             re-pre-sen-ta-ción
             res-pec-to
	     re-troa-limen-ta-ci-ón
             si-guien-te
             si-guien-tes
             va-ria-ble
             va-ria-bles
             }

\usepackage{float}
%images
\usepackage{graphicx}

%Paragraph
%\usepackage{blindtext}

%\usepackage{epsfig}% para los ejemplos con postscript.
%\usepackage{epstopdf}

% inserción url's notas de pie.
\usepackage{url}

%url
\usepackage[colorlinks=true,urlcolor=blue,linkcolor=blue]{hyperref}

%Numeración de página
\setcounter{page}{1}
\pagenumbering{arabic}

%insertat source code
\usepackage{listings}
%%defino atributos para code bash
%%\lstset{language=bash, basicstyle=\ttfamily, frame=single}  \footnotesize
\lstset{basicstyle=\footnotesize\ttfamily, escapechar={', --} }

%comentarios que incluyen varias líneas
\usepackage{verbatim}

%negrita
\usepackage{bold-extra}

% idioma
\usepackage[utf8]{inputenc}
\usepackage[spanish]{babel}

%tablas
\usepackage{booktabs}
\usepackage{multirow}

% Personalizar listas
\usepackage{paralist}

%rotar tablas
\usepackage{rotating}

%color tablas
\usepackage{colortbl}
%\usepackage[table]{xcolor}

%espaciado
\usepackage{setspace}
%%\onehalfspacing
\setlength{\parindent}{0pt}
\setlength{\parskip}{2.0ex plus0.5ex minus0.2ex}

%margenes según n. icontec
\usepackage{vmargin}
\setmarginsrb           { 4.0cm}  % left margin
                        { 3.0cm}  % top margcm
                        { 2.0cm}  % right margcm
                        { 2.0cm}  % bottom margcm
                        {   0pt}  % head height
                        {0.0 cm}  % head sep
                        {   9pt}  % foot height
                        { 1.0cm}  % foot sep

% Paquetes de la AMS:
\usepackage{amsmath, amsthm, amsfonts}
\addto\captionsspanish{\def\refname{\textsc{Bibliografía}}}

\begin{document}

\chapter{DOCUMENTACIÓN DE LA HERRAMIENTA}

\section{MANUAL PARA USUARIO TEAM}

\subsection{Conceptos Previos}

\subsection{Team}\label{users}
El usuario team se clasifica en \textbf{interno} o \textbf{externo}, de acuerdo a su afiliacion. Cuando un team tiene afiliación \textbf{UTP}, es considerado como \textbf{team interno}, de lo contrario, es considerado como \textbf{team externo}.\\
A su vez, un team interno puede ser clasificado respecto a su categoria , varia entre: Participants, Post, Observers u Organisation.\\

\subsubsection{External Contest}\label{contests}
Se trata de un Contest que puede servir como entrenaiemto o competencia nacional, en el pueden participar teams del tipo externo~\ref{users}, y teams del tipo interno~\ref{users} correspondientes a la categoria Participants.

\subsubsection{Internal Contest}\label{contests}
Son Contest exclusivos para los maratonistas UTP, pueden servir como entrenamiento o como competencia interna, por tanto, los teams a participar deben ser del tipo interno~\ref{users} correspondientes a la categoria Participants.

\subsubsection{Postmaratones}

Una \textbf{postmaratón} es un \textbf{contest de entrenamiento} que se activa por un período de tiempo \textbf{t}, durante el cual, los maratonistas someten soluciones a problemas de un determinado Contest de competencia.

A diferencia de una competencia de programación que generalmente dura 5 horas\footnote{En lo que respecta a las competencias del circuito Colombiano de Maratones de Programación.}, una Postmaraton tiene un tiempo de duración compuesto por varios días, durante esté, el sistema almacena y publica:

	\begin{itemize}

	\item El código fuente sometido como solución a un determinado problema, \textbf{si y sólo si, el resultado del sometimiento es correct}.

	\item Los comentarios que se vayan realizando al código fuente publicado.
	
	\end{itemize}

Una vez finalice la Postmaraton, se puede acceder al código fuente y a los comentarios almacenados durante la misma, también es posible someter soluciones.

De este modo, cuenta con los modulos \textbf{Current\_post} y \textbf{History\_post}.

	\begin{itemize}

	\item\textbf{Current\_post}

		\begin{itemize}

		\item Está activo durante el tiempo que dura la actual Postmaraton.
		
		\item Permite visualizar detalles de la actual postmaratón.

		\item Permite acceder a las soluciones y comentarios disponibles.

		\item Permite adicionar comentarios al código fuente publicado. 		
	
		\end{itemize} 	

	\item\textbf{History\_post:}

		\begin{itemize}

		\item Esta activado siempre.

		\item Permite acceder a los datos de Postmaratones que hayan finalizado.

		\item  Posibilita que el team adicione comentarios a las soluciones existentes de una determinada Postmaraton.		
	
		\item Permite que el team someta soluciónes a un determinado problema, siempre y cuando, durante la Postmaraton  no haya obtenido \textbf{correct} en el sometimiento de tal problema. 
	
		\end{itemize} 	

	\end{itemize}	
  
\subsubsection{Tipos de Cuentas}\label{cuenta_team}

Todo team interno[\ref{users}] tendrá dos cuentas, una para participar en Contest bien sea del tipo External[\ref{contests}] o Internal[\ref{contests}]; esta cuenta podrá ser grupal o individual, según las características del contest y se denomina \textbf{cuenta contest}.

{La otra cuenta, es individual y es exclusiva para participar en Postmaratones, recibe el nombre de \textbf{cuenta post}.}

\subsection{Instruccciones para logearse}

	\begin{enumerate}

	\item Ingresar a la interfaz web del team, accediendo al link:\\
	\url{http://10.1.3.220/domjudge/team}
	
	\item Ingresar el \textbf{login} y \textbf{password} correspondiente.\\

	\begin{figure}[H]
	\caption{Logeo team.}
	\label{fig:team_log1}
	\begin{center}
	\fbox{\includegraphics[width=12cm]{imagenes/teams/logear1.jpg}}
	\end{center}
	\end{figure}
Si el team pretende ingresar al entorno de un External[\ref{contests}] o un Internal[\ref{contests}] Contest, debe ingresar el login y password correspondiente a la \textbf{cuenta contest}[\ref{cuenta_team}].\\

Si por el contrario, desea ingresar a un entorno de Postamaraton, debe ingresar el login y password correspondiente a la \textbf{cuenta post}[\ref{cuenta_team}].\\


	\item En cuanto se suministren los datos correctos, se podrá acceder a la página del team dando click en el link: {\color{blue}Continue to your team page}. Ver figura \ref{fig:team_log2}
	
	\begin{figure}[H]
	\caption{Acceder página team.}
	\label{fig:team_log2}
	\begin{center}
	\fbox{\includegraphics[width=9cm]{imagenes/teams/logear3.jpg}}
	\end{center}
	\end{figure}	

Finalmente, debe aparecer una página similar a:\\

	\begin{figure}[H]
	\caption{Página team.}
	\label{fig:team_log3}
	\begin{center}
	\fbox{\includegraphics[width=15cm]{imagenes/teams/logear4_2.jpg}}
	\end{center}
	\end{figure}

	\end{enumerate}

	
\subsection{Instrucciones para participar en una Postmaraton}

Se debe estar logeado en la \textbf{cuenta post}[\ref{cuenta_team}].

\subsubsection{Acceder al Problem Set  de la actual Postmaraton}

Los problemas de la actual Postmaraton son listados al dar click en el link \url{problems}, ubicado en el menu superior de la página.

\subsubsection{Someter soluciones}

		\begin{itemize}

		\item Dar click en el link \url{submit}, ubicado en el menu superior de la página.

		\item Seleccionar el archivo del algoritmo.

		\item Seleccionar el problema a juzgar.

		\item Seleccionar el lenguaje del algortimo.

		\item Dar click en el boton submit.\\

		La figura \ref{fig:sub_post} muestra los pasos 2 a 5.\\

Si la operación es exitosa, aparece un mensaje similar al de la figura \ref{fig:sub_exit}\\
		
		\end{itemize}	

		\begin{figure}[H]
		\caption{Submit actual Postmaraton.}
		\label{fig:sub_post}
		\begin{center}
		\fbox{\includegraphics[width=8cm]{imagenes/teams/contest/submit_postmaraton2.jpg}}
		\end{center}
		\end{figure}

		\begin{figure}[H]
		\caption{Submit exitoso.}
		\label{fig:sub_exit}
		\begin{center}
		\fbox{\includegraphics[width=9cm]{imagenes/teams/contest/submitpostmaraton4_a.jpg}}
		\end{center}			
		\end{figure}

\subsubsection{Conocer estado de submisions realizadas}

		\begin{enumerate}
		
		\item El team puede ver el estado de sus sometimientos accediendo al link \url{sumissions}, ubicado en el menu superior de la página. Ver figura \ref{fig:est_sub}

		\end{enumerate}

		\begin{figure}[H]
		\caption{Estado submissions.}
		\label{fig:est_sub}
		\begin{center}
	\fbox{\includegraphics[width=15cm]{imagenes/teams/contest/submitpostmaraton_resultado.jpg}}
		\end{center}	
		\end{figure}


\subsubsection{Conocer detalles actual Postmaraton}

		\begin{enumerate}

		\item\textbf{Conocer soluciones disponibles}\\

Acceder al menu \url{current_post}, a continuación aparece el nombre de la actual Postmaraton y una lista con las columnas: Problem, Stament y Source Code Avaible, correspondientes a: nombre, enunciado y cantidad soluciones correctas del problema.

		\begin{figure}[H]
		\caption{Detalles actual Postmaraton.}
		\label{fig:det_post}
		\begin{center}
		\fbox{\includegraphics[width=14cm]{imagenes/teams/contest/det_post1.jpg}}
		\end{center}
		\end{figure}

		\item\textbf{Acceder al código fuente solución de un determinado problema}

			\begin{enumerate}
				
			\item Dar click en la columna \textbf{Source Code Avaible}, correspondiente al problema de interés. Ver figura \ref{fig:lista_sc}
			\begin{figure}[H]
			\centering
			\caption{Lista Source code}
			\fbox{\includegraphics[width=14cm]{imagenes/teams/contest/det_post2.jpg}}
			\label{fig:lista_sc}			
			\end{figure}
		
			\vspace{1.0 cm}			

			\item A continuación aparece el listado de soluciones disponibles. Se especifica el team autor, la hora del submit y el lenguaje de programación\\

			\begin{figure}[H]
			\centering
			\caption{Seleccionar source code a visualizar}
		\fbox{\includegraphics[width=12cm]{imagenes/teams/contest/acceder_sc.jpg}}
			\label{fig:selec_sc}			
			\end{figure}

		Basta con dar click en un elemento de la lista para visualizar el código, tal como aparece en la figura \ref{fig:opers_sc}.
		
			\end{enumerate}

			\vspace{0.5cm}

		\item\textbf{Descargar el código fuente de un determinado problema.}

			\begin{enumerate}
	
			\item Estando ubicado en el código fuente de problema objetivo, se da click en la opción \url{download}. Ver la figura \ref{fig:opers_sc}.

			\end{enumerate}

			\vspace{0.5cm}

		\item\textbf{Adicionar comentario a un código fuente}

			\begin{enumerate}

			\item Dar click en la opción {\color{blue}add comment}, que aparece al final de cada código fuente, tal como se aprecia en la figura \ref{fig:opers_sc}.

			\item Se edita el comentario y se da click en publicar fig \ref{fig:pub_comm}.

			\begin{figure}[H]
			\centering
			\caption{Visualizar source code}
		\fbox{\includegraphics[width=15cm, height=16.5cm]{imagenes/teams/contest/opers2_sc.jpg}}
			\label{fig:opers_sc}			
			\end{figure}			

			\begin{figure}[H]
			\caption{Publicar comentario}
			\label{fig:pub_comm}
			\begin{center}
		\fbox{\includegraphics[width=15cm]{imagenes/teams/contest/public_comment.jpg}}
			\end{center}
			\end{figure}
	
			\end{enumerate}
			
		\end{enumerate}

		\vspace{1.0cm}

\subsection{Instrucciones para utilizar History Post}
Cada que finaliza una Postmaraton se genera un histórico de la misma, en este se almacenan las soluciones y comentarios del problem set.\\
El team tiene la posibilidad de someter soluciones de los problemas que no logro resolver durante una Postmaraton y realizar los comentarios que considere necesarios.

Se debe estar logeado en la \textbf{cuenta post}[\ref{cuenta_team}].

\subsubsection{Visualizar histórico de Postmaratones}
	
Acceder a \url{History\_post} del menu principal.

	\begin{figure}[H]
	\caption{Acceder History\_post}
	\label{fig:acc_history}
	\begin{center}
	\fbox{\includegraphics[width=15cm]{imagenes/teams/contest/hist_post.jpg}}
	\end{center}		
	\end{figure}

Seguidamente se listan las postmaratones que han finalizado.\\
	
	\begin{figure}[H]	
	\caption{Postmaratones Finalizadas}
	\label{fig:post_fin}
	\begin{center}
	\fbox{\includegraphics[width=15cm]{imagenes/teams/history/list_post.jpg}}
	\end{center}		
	\end{figure}

\subsubsection{Someter soluciones}
	
	\begin{enumerate}

	\item Elegir la Postmaraton de interés.\\
Una vez elegida la postmaraton de interés(ver figura \ref{fig:post_fin}), aparece un listado con el número de soluciones para cada problema, más la opción de someter una solución, sólo si, el actual team no ha sometido una solución correcta para el mismo.

	\begin{figure}[H]
	\caption{Lista problemas y soluciones History\_post}	
	\label{fig:sc_history}
	\begin{center}
	\fbox{\includegraphics[width=15cm]{imagenes/teams/history/add_sc0.jpg}}
	\end{center}		
	\end{figure}

	\item Elegir el problema.\\
Suponiendo que se va a somenter una solución para el problema GCD\_P, se da click en la opción Add Source, figura \ref{fig:sc_history}. 

	\item Descargar los testcases de entrada.\\
En cuanto se ejecuta el paso anterior, aparece una página similar a:

	\begin{figure}[H]
	\caption{Testcases de entrada History\_post}
	\label{fig:testcases}
	\begin{center}
	\fbox{\includegraphics[width=15cm]{imagenes/teams/history/add_sc1.jpg}}
	\end{center}	
	\end{figure}

Donde se proporcionan los testcases de entrada del problema, la mecánica consiste en que una vez el team inicie la descarga de estos, tiene cuatro minutos para someter su solución.

Con los testcases de entrada, el team debe generar las salidas con el código fuente que pretende someter.

En casos como el expuesto, donde el problema posee demasiados casos de prueba, cuatro minutos puede ser poco tiempo para generar las respectivas salidas, y subirlas.
Ante esto, el team puede optar por descargar los testcases y dedicarse a generar las salidas. En cuanto las posea todas, actualiza la página y sube los respectivos rchivos.

	\item Subir salidas generadas y algoritmo a someter.

		\begin{enumerate}
		
		\item Indicar la ubicación de los archivos correspondientes a las salidas generadas.

		\item Indicar ubicación del archivo correspondiente al algoritmo.

		\item Seleccionar el lenguaje.
	
		\item Dar click en el boton submit.\\


		Tal cómo se aprecia en la figura \ref{fig:submit_hist}

		\vspace{1.0cm}

		\begin{figure}[H]
		\caption{Submit salidas del programa y algoritmo}
		\label{fig:submit_hist}
		\begin{center}
		\fbox{\includegraphics[width=15.5cm]{imagenes/teams/history/sub_sc_hy.jpg}}	
		\end{center}		
		\end{figure}

		\end{enumerate}

	\item{Respuesta del sometimiento}\\

Las posibles respuestas son:

	\begin{itemize}

	\item\textbf{CORRECT}\\
Un sometimiento da como resultado \textbf{CORRECT}, cuando los archivos de salida proporcionados corresponden con las salidas que debe generar el programa. Ver figura \ref{fig:correct}\\
El codigó fuente se publica.

	\item\textbf{ERROR}\\
Si los archivos de salida proporcionados no corresponden con los valores que debe generar el programa, se obtiene \textbf{ERROR}.Ver figura \ref{fig:error}\\
El código fuente no es publicado.

	\item\textbf{TOO-LATE}\\
Cuando la operación de subir los archivos sobrepasa los cuatro minutos, correspondientes al tiempo límite, obtiene como resultado \textbf{TOO-LATE}. Ver figura \ref{fig:time}.
	
	\end{itemize}

	\end{enumerate}

	\vspace{1.0cm}

	\begin{figure}[H]	
	\caption{Error Submission}
	\label{fig:error}
	\begin{center}
	\fbox{\includegraphics[width=15cm]{imagenes/teams/history/res1.jpg}}
	\end{center}		
	\end{figure}

	\begin{figure}[H]	
	\caption{Correct Submission}
	\label{fig:correct}
	\begin{center}
	\fbox{\includegraphics[width=15cm]{imagenes/teams/history/res2.jpg}}
	\end{center}		
	\end{figure}

	\begin{figure}[H]	
	\caption{Too-late Submission}
	\label{fig:time}
	\begin{center}
	\fbox{\includegraphics[width=15cm]{imagenes/teams/history/res3.jpg}}
	\end{center}		
	\end{figure}
	
\subsubsection{Adicionar Comentarios}

	\begin{enumerate}

	\item Acceder al source code del problema de interés.

	\begin{figure}[H]	
	\caption{Visualizar source code}
	\label{fig:selec_sc}
	\begin{center}
	\fbox{\includegraphics[width=15cm]{imagenes/teams/history/selec_sc.jpg}}
	\end{center}		
	\end{figure}
	
	\item Estando en la página que mustra el código fuente, dar click la opción {\color{blue} add comment}. Ver figura \ref{fig:opers_sc}

	\item Editar el comentario y dar click en el boton public, de manera similar a como se hizo en \ref{fig:pub_comm}

	\end{enumerate}


\end{document}
